package cc.rengu.igas.channel.upac.facade;

import cc.rengu.igas.channel.upac.facade.request.*;
import cc.rengu.igas.channel.upac.facade.response.*;
import cc.rengu.igas.channel.upac.facade.result.Result;

/**
 * 银联全渠道贷记（代付）业务API组件
 */
public interface AuthenticationService {

    /**
     * 实名认证服务
     *
     * @param realNameAuthRequest 实名认证请求
     * @return 实名认证应答
     * @
     */
    Result<RealNameAuthResponse> realNameAuth(RealNameAuthRequest realNameAuthRequest);

    /**
     * 开户认证服务
     *
     * @param openAcctAuthRequest 开户验证请求
     * @return 验证结果
     */
    Result<OpenAcctAuthResponse> openAcctAuth(OpenAcctAuthRequest openAcctAuthRequest);

    /**
     * 统一机构接入查询
     *
     * @param unifiedOrgQueryRequest 统一机构接入查询请求
     * @return 统一机构接入查询结果
     */
    Result<UnifiedOrgQueryResponse> unifiedOrgQuery(UnifiedOrgQueryRequest unifiedOrgQueryRequest);
}
